/*! sphinx-book-theme CSS
 * BSD 3-Clause License
 * Copyright (c) 2020, EBP
 * All rights reserved.
 *
 * This follows the 7-1 pattern described here:
 * https://sass-guidelin.es/#architecture
 */
:root {
    --pst-font-size-base: none;
    --pst-color-primary:  rgb(87, 154, 202);
    --pst-color-admonition-note: var(--pst-color-primary);
    --pst-color-admonition-default: var(--pst-color-primary);
    --pst-color-info:  rgb(255, 193, 7);
    --pst-color-admonition-tip: var(--pst-color-info);
    --pst-color-admonition-hint: var(--pst-color-info);
    --pst-color-admonition-important: var(--pst-color-info);
    --pst-color-warning:  rgb(245, 162, 82);
    --pst-color-danger:  rgb(230, 101, 129);
    --pst-color-admonition-warning: var(--pst-color-danger);
    --pst-color-link: rgb(0, 113, 188);
    --sbt-font-size-regular: 100%;
    --sbt-font-size-large: 112.5%;
    --sbt-font-size-small-1: 87.5%;
    --sbt-font-size-small-2: 70%;
    --sbt-sidebar-font-size: var(--sbt-font-size-small-1);
    --sbt-header-article-font-size: var(--sbt-font-size-small-1);
    --sbt-prevnext-font-size: var(--sbt-font-size-small-1);
    --sbt-footer-font-size: var(--sbt-font-size-small-1)
}

.sbt-scroll-pixel-helper {
    position: absolute;
    width: 0;
    height: 0;
    top: 0;
    left: 0
}

.visually-hidden {
    clip: rect(0, 0, 0, 0) !important;
    border: 0 !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important
}

.d-n,
.onlyprint {
    display: none
}

@media print {
    .onlyprint {
        display: block !important
    }
}

@media print {
    .noprint {
        display: none !important
    }
}

.col {
    min-width: 0
}

.content-container a.headerlink {
    opacity: 0;
    margin-left: .2em
}

.content-container a.headerlink:hover {
    background-color: transparent;
    color: rgba(var(--pst-color-link), 1);
    opacity: 1 !important
}

.content-container a,
.content-container a:visited {
    color: rgba(var(--pst-color-link), 1)
}

.content-container h1,
.content-container h2,
.content-container h3,
.content-container h4,
.content-container h5 {
    color: #000
}

.content-container h1:hover a.headerlink,
.content-container h2:hover a.headerlink,
.content-container h3:hover a.headerlink,
.content-container h4:hover a.headerlink,
.content-container h5:hover a.headerlink {
    opacity: .5
}

.content-container h1 a.toc-backref,
.content-container h2 a.toc-backref,
.content-container h3 a.toc-backref,
.content-container h4 a.toc-backref,
.content-container h5 a.toc-backref {
    color: inherit
}

.content-container h3,
.content-container h4,
.content-container h5,
.content-container h6 {
    margin-top: 1em
}

.content-container ol p,
.content-container ul p {
    margin-bottom: 0
}

.content-container p.centered {
    text-align: center
}

.content-container .footnote-reference,
.content-container a.bibtex.internal {
    font-size: 1em
}

@media print {
    #jb-print-docs-body {
        max-width: 90%;
        margin: auto
    }

    #jb-print-docs-body h1 {
        font-size: 3em;
        text-align: center;
        margin-bottom: 0
    }

    #main-content {
        max-width: 67% !important;
        margin-left: 5% !important;
        padding-top: 0
    }

    #main-content h1:first-of-type {
        display: none
    }

    .container {
        min-width: 0 !important
    }

    h1 {
        margin-top: 1em;
        margin-bottom: 1em
    }

    h1,
    h2,
    h3,
    h4 {
        break-after: avoid;
        color: #000
    }

    table {
        break-inside: avoid
    }

    pre {
        word-wrap: break-word
    }

    a.headerlink {
        display: none
    }

    blockquote.epigraph {
        border: none
    }

    .footer {
        margin-top: 1em
    }
}

body {
    padding-top: 0 !important
}

#main-content,
#print-main-content {
    transition: padding .25s ease-out;
    padding-top: 1.5em
}

@media (min-width:768px) {
    #main-content {
        max-width: 70%
    }
}

footer.footer-article {
    border-top: none;
    padding: 0
}

footer.footer-article .prev-next-area {
    font-size: var(--sbt-prevnext-font-size)
}

footer.footer-article .prev-next-area a {
    margin-bottom: 1em;
    padding-left: 0;
    padding-right: 0
}

@media (min-width:768px) {
    footer.footer-article .prev-next-area {
        max-width: 70%
    }
}

footer {
    font-size: var(--sbt-font-size-small-1)
}

.header-article {
    height: 3em;
    background-color: #fff;
    transition: left .2s;
    font-size: var(--sbt-header-article-font-size)
}

@media (max-width:768px) {
    .header-article {
        height: 3.75em
    }
}

.scrolled .header-article {
    box-shadow: 0 6px 6px -6px rgba(0, 0, 0, .3)
}

.header-article .header-article-main {
    height: 3em
}

@media (max-width:768px) {
    .header-article .header-article-main {
        height: 3.75em
    }
}

.header-article .header-article-main .header-article__left,
.header-article .header-article-main .header-article__right {
    display: flex;
    align-items: center
}

.header-article .header-article-main .header-article__right {
    margin-left: auto
}

.header-item {
    width: 100%;
    text-align: center
}

.header-item:empty {
    display: none
}

.header-item.announcement {
    background-color: #616161;
    color: #fff;
    padding: .4em 12.5%
}

@media (max-width:768px) {
    .header-item.announcement {
        padding: .4em 2%
    }
}

#site-navigation {
    padding-top: 0;
    width: 275px;
    font-size: var(--sbt-sidebar-font-size);
    top: 0 !important;
    background: #fff;
    border-right: 1px solid rgba(0, 0, 0, .1);
    transition: margin-left .25s ease 0s, opacity .25s ease 0s, visibility .25s ease 0s;
    overflow-y: unset;
    height: 100vh
}

@media (max-width:768px) {
    #site-navigation {
        height: 100%;
        position: fixed;
        width: 75%;
        max-width: 300px;
        font-size: 1.2em;
        z-index: 1100
    }
}

#site-navigation .bd-sidebar__content {
    overflow-y: auto;
    flex-grow: 1;
    display: flex;
    flex-direction: column
}

#site-navigation .bd-sidebar__content::-webkit-scrollbar {
    width: .3rem;
    height: .3rem
}

#site-navigation .bd-sidebar__content::-webkit-scrollbar-thumb {
    background: #c1c1c1;
    border-radius: .25rem
}

#site-navigation .bd-sidebar__content::-webkit-scrollbar-thumb:hover {
    background: #a0a0a0
}

#site-navigation .bd-sidebar__content:not(:hover)::-webkit-scrollbar-thumb {
    visibility: hidden
}

#site-navigation .bd-sidebar__bottom,
#site-navigation .bd-sidebar__top {
    padding: 0 1rem 0 1.5rem
}

#site-navigation .bd-sidebar__bottom {
    margin-top: auto;
    margin-bottom: 2em
}

#site-navigation nav ul.nav li a,
#site-navigation nav ul.nav ul li a {
    color: #5a5a5a
}

#site-navigation nav ul.nav a:hover,
#site-navigation nav ul.nav li.active>a,
#site-navigation nav ul.nav li.active>a:hover {
    color: rgba(var(--pst-color-link), 1)
}

#site-navigation nav ul.nav ul {
    padding-left: 1rem
}

#site-navigation h1.site-logo {
    margin: .5em 0 0;
    font-size: 1.1em;
    color: #000;
    text-align: center
}

#site-navigation div.navbar_extra_footer {
    text-align: center;
    font-size: .9em;
    color: #5a5a5a;
    margin-bottom: 3em
}

#site-navigation.single-page {
    border-right: 0
}

@media (min-width:768px) {
    div.navbar-brand-box {
        padding-top: 2em
    }
}

div.navbar-brand-box a.navbar-brand {
    width: 100%;
    height: auto;
    flex-direction: column
}

div.navbar-brand-box a.navbar-brand img {
    display: block;
    height: auto;
    width: auto;
    max-height: 10vh;
    max-width: 100%;
    margin: 0 auto
}

@media (min-width:768px) {
    div.navbar-brand-box a.navbar-brand img {
        max-height: 15vh !important
    }
}

nav.bd-links {
    margin-left: 0;
    overflow-y: visible;
    max-height: none
}

nav.bd-links .toctree-l1 a,
nav.bd-links p.caption {
    padding-left: 0
}

.bd-toc {
    padding: 0 !important;
    right: -1em;
    height: auto;
    transition: margin-right .25s ease 0s, opacity .25s ease 0s, visibility .25s ease 0s
}

.bd-toc .toc-entry a,
.bd-toc div.onthispage {
    color: #5a5a5a
}

@media (max-width:768px) {
    .bd-toc {
        z-index: 1100;
        top: 0;
        right: 0;
        position: fixed;
        height: 100%;
        width: 75%;
        max-width: 300px;
        background-color: #fff;
        border-left: 1px solid rgba(0, 0, 0, .1);
        font-size: 1.4em
    }

    .bd-toc li {
        font-size: .8em
    }
}

.bd-toc nav {
    opacity: 0;
    max-height: 0;
    transition: opacity .2s ease, max-height .7s ease;
    overflow-y: hidden;
    background: #fff
}

.bd-toc nav::-webkit-scrollbar {
    width: .3rem;
    height: .3rem
}

.bd-toc nav::-webkit-scrollbar-thumb {
    background: #c1c1c1;
    border-radius: .25rem
}

.bd-toc nav::-webkit-scrollbar-thumb:hover {
    background: #a0a0a0
}

.bd-toc nav:not(:hover)::-webkit-scrollbar-thumb {
    visibility: hidden
}

.bd-toc nav a:hover,
.bd-toc nav li.active>a.active {
    color: rgba(var(--pst-color-link), 1)
}

.bd-toc nav li.active>a.active {
    border-left: 2px solid rgba(var(--pst-color-link), 1)
}

.bd-toc nav>.nav {
    border-left: 1px solid #eee
}

.bd-toc nav>.nav .nav {
    border-left: none
}

.bd-toc.show nav,
.bd-toc:hover nav {
    max-height: 90vh;
    opacity: 1;
    overflow-y: auto
}

.bd-toc.show .tocsection:after,
.bd-toc:hover .tocsection:after {
    opacity: 0
}

@media (max-width:768px) {
    .bd-toc nav {
        max-height: 90vh;
        opacity: 1;
        overflow-y: auto
    }

    .bd-toc .tocsection:after {
        opacity: 0
    }
}

.bd-toc .tocsection {
    padding: .5rem 0 .5rem 1rem !important
}

.bd-toc .tocsection:after {
    content: "\f107";
    font-family: Font Awesome\ 5 Free;
    font-weight: 900;
    padding-left: .5em;
    transition: opacity .3s ease
}

.bd-toc .toc-entry a {
    padding: .125rem 1rem !important
}

.bd-toc div.editthispage {
    display: none
}

input.sidebar-toggle {
    display: none;
    position: absolute
}

@media (min-width:768px) {
    input#__navigation:checked~.container-xl #site-navigation {
        visibility: hidden;
        opacity: 0;
        margin-left: -275px
    }

    input#__navigation:checked~.container-xl #main-content {
        padding-left: 4rem;
        padding-right: 4rem
    }
}

@media (max-width:768px) {
    input#__navigation:not(:checked)~.container-xl #site-navigation {
        visibility: hidden;
        opacity: 0;
        margin-left: -75%
    }
}

@media (max-width:768px) {
    input#__page-toc:not(:checked)~.container-xl .bd-toc {
        visibility: hidden;
        opacity: 0;
        margin-right: -75%
    }
}

label.overlay {
    height: 0;
    opacity: 0;
    position: fixed;
    top: 0;
    transition: width 0ms, height 0ms, opacity .25s ease-out;
    width: 0
}

label.overlay.overlay-navbar {
    background-color: rgba(0, 0, 0, .54)
}

@media (max-width:768px) {
    input:checked+label.overlay {
        height: 100%;
        opacity: 1;
        width: 100%
    }

    input:checked+label.overlay.overlay-navbar {
        z-index: 1099
    }

    input:checked+label.overlay.overlay-pagetoc {
        z-index: 1019
    }
}

.headerbtn {
    justify-content: center;
    background-color: #fff;
    color: #5a5a5a;
    cursor: pointer;
    border: none;
    padding: .1rem .5rem;
    margin: 0 .1rem
}

.headerbtn,
.headerbtn span {
    display: flex;
    align-items: center
}

.headerbtn i,
.headerbtn img {
    margin: auto;
    width: 1em;
    text-align: center;
    font-size: 1.5em
}

.menu-dropdown__content:hover,
.menu-dropdown__trigger:hover+.menu-dropdown__content {
    visibility: visible;
    opacity: 1
}

.menu-dropdown__content {
    position: absolute;
    visibility: hidden;
    opacity: 0;
    transform: translateX(-75%);
    transition: opacity .2s ease-out;
    width: 10rem;
    border-radius: .4em;
    box-shadow: 0 3px 10px 0 rgba(0, 0, 0, .25);
    padding: .5em;
    background-color: #fff
}

.menu-dropdown__content .headerbtn {
    justify-content: left;
    padding: .1rem 0
}

.menu-dropdown__content ul {
    list-style: none;
    padding-left: 0;
    margin-bottom: 0
}

.menu-dropdown__content span {
    display: flex
}

.menu-dropdown__content span.headerbtn__icon-container {
    width: 2em
}

.menu-dropdown__content span.headerbtn__text-container {
    flex-grow: 1;
    margin-left: .5em
}

.menu-dropdown__content i,
.menu-dropdown__content img {
    font-size: 1.2em
}

div.header-article-main .header-article__left a,
div.header-article-main .header-article__left button,
div.header-article-main .header-article__left label,
div.header-article-main .header-article__right a,
div.header-article-main .header-article__right button,
div.header-article-main .header-article__right label {
    color: #5a5a5a
}

div.header-article-main .header-article__left a:focus,
div.header-article-main .header-article__left a:hover,
div.header-article-main .header-article__left button:focus,
div.header-article-main .header-article__left button:hover,
div.header-article-main .header-article__left label:focus,
div.header-article-main .header-article__left label:hover,
div.header-article-main .header-article__right a:focus,
div.header-article-main .header-article__right a:hover,
div.header-article-main .header-article__right button:focus,
div.header-article-main .header-article__right button:hover,
div.header-article-main .header-article__right label:focus,
div.header-article-main .header-article__right label:hover {
    color: #000;
    box-shadow: none;
    text-decoration: none
}

.headerbtn-page-toc {
    display: block
}

@media (min-width:768px) {
    .headerbtn-page-toc {
        display: none
    }
}

dt:target,
span.highlighted {
    background-color: rgba(243, 119, 38, .25882352941176473)
}

.admonition {
    border-radius: .4em;
    box-shadow: 0 .2rem .5rem rgba(0, 0, 0, .05), 0 0 .0625rem rgba(0, 0, 0, .1)
}

.admonition.seealso {
    border-color: #28a745
}

.admonition.seealso .admonition-title {
    background-color: rgba(40, 167, 70, .1)
}

.admonition.seealso .admonition-title:before {
    color: #28a745;
    content: "\f064"
}

code {
    font-size: 87.5% !important
}

pre {
    border-radius: .4em
}

pre::-webkit-scrollbar {
    width: .3rem;
    height: .3rem
}

pre::-webkit-scrollbar-thumb {
    background: #c1c1c1;
    border-radius: .25rem
}

pre::-webkit-scrollbar-thumb:hover {
    background: #a0a0a0
}

div[class*=highlight-],
pre {
    clear: none
}

.highlighttable .linenos {
    vertical-align: baseline
}

div.highlight {
    background: none;
    margin-bottom: 1em
}

.cm-s-default {
    font-family: var(--jp-code-font-family);
    font-size: var(--jp-code-font-size);
    line-height: var(--jp-code-line-height)
}

.CodeMirror-focused {
    background-color: var(--jp-cell-editor-active-background) !important;
    border: var(--jp-border-width) solid var(--jp-cell-editor-active-border-color);
    margin: -1px
}

dl.field-list dd,
dl.simple dd {
    margin-left: 1.5em
}

dl.footnote span.fn-backref {
    font-size: 1em;
    padding-left: .1em
}

dl.footnote dd {
    font-size: .9em;
    margin-left: 3em
}

.footnote-reference,
a.bibtex.internal {
    font-size: 1em
}

dl.glossary dd {
    margin-left: 1.5em
}

img {
    max-width: 100%
}

img.align-center {
    margin-left: auto;
    margin-right: auto;
    display: block
}

img.align-left {
    clear: left;
    float: left;
    margin-right: 1em
}

img.align-right {
    clear: right;
    float: right;
    margin-left: 1em
}

div.figure {
    width: 100%;
    margin-bottom: 1em;
    text-align: center
}

div.figure.align-left {
    text-align: left
}

div.figure.align-left p.caption {
    margin-left: 0
}

div.figure.align-right {
    text-align: right
}

div.figure.align-right p.caption {
    margin-right: 0
}

div.figure p.caption {
    margin: .5em 10%
}

div.figure.margin-caption p.caption,
div.figure.margin p.caption {
    margin: .5em 0
}

div.figure.margin-caption p.caption {
    text-align: left
}

div.figure span.caption-number {
    font-weight: 700
}

div.figure span {
    font-size: .9rem
}

label.margin-toggle {
    margin-bottom: 0
}

label.margin-toggle.marginnote-label {
    display: none
}

label.margin-toggle sup {
    user-select: none
}

@media (max-width:768px) {
    label.margin-toggle {
        cursor: pointer;
        color: #0071bc
    }

    label.margin-toggle.marginnote-label {
        display: inline
    }

    label.margin-toggle.marginnote-label:after {
        content: "\2295"
    }
}

input.margin-toggle {
    display: none
}

@media (max-width:768px) {

    input.margin-toggle:checked+.marginnote,
    input.margin-toggle:checked+.sidenote {
        display: block;
        float: left;
        left: 1rem;
        clear: both;
        width: 95%;
        margin: 1rem 2.5%;
        position: relative
    }
}

span.marginnote,
span.sidenote {
    width: 40%;
    float: right;
    background-color: unset;
    font-size: .9em;
    border-left: none
}

span.marginnote sup,
span.sidenote sup {
    user-select: none
}

@media (min-width:768px) {

    span.marginnote,
    span.sidenote {
        border: none;
        width: 39.85714%;
        margin: 0 -42.85714% 0 0;
        clear: right
    }

    span.marginnote p.sidebar-title,
    span.sidenote p.sidebar-title {
        margin-bottom: .1em
    }
}

@media (max-width:768px) {

    span.marginnote,
    span.sidenote {
        display: none
    }
}

.cell.tag_margin,
.cell.tag_popout,
aside.margin,
div.margin,
figure.margin {
    width: 40%;
    float: right;
    background-color: unset;
    border-left: 1px solid #a4a6a7;
    font-size: .9em
}

@media (min-width:768px) {

    .cell.tag_margin,
    .cell.tag_popout,
    aside.margin,
    div.margin,
    figure.margin {
        border: none;
        width: 39.85714%;
        margin: 0 -42.85714% 0 0;
        clear: right
    }

    .cell.tag_margin p.sidebar-title,
    .cell.tag_popout p.sidebar-title,
    aside.margin p.sidebar-title,
    div.margin p.sidebar-title,
    figure.margin p.sidebar-title {
        margin-bottom: .1em
    }
}

.cell.tag_margin div.cell.tag_margin .cell_output,
.cell.tag_popout div.cell.tag_margin .cell_output,
aside.margin div.cell.tag_margin .cell_output,
div.margin div.cell.tag_margin .cell_output,
figure.margin div.cell.tag_margin .cell_output {
    padding-left: 0
}

div.figure.margin-caption figcaption,
div.figure.margin-caption p.caption,
figure.margin-caption figcaption {
    width: 40%;
    float: right;
    background-color: unset;
    border-left: 1px solid #a4a6a7;
    font-size: .9em
}

@media (min-width:768px) {

    div.figure.margin-caption figcaption,
    div.figure.margin-caption p.caption,
    figure.margin-caption figcaption {
        border: none;
        width: 39.85714%;
        margin: 0 -42.85714% 0 0;
        clear: right
    }

    div.figure.margin-caption figcaption p.sidebar-title,
    div.figure.margin-caption p.caption p.sidebar-title,
    figure.margin-caption figcaption p.sidebar-title {
        margin-bottom: .1em
    }
}

@media (min-width:768px) {

    .full-width,
    .full_width,
    div.cell.tag_full-width,
    div.cell.tag_full_width {
        max-width: 142.85714%;
        width: 142.85714%
    }
}

.margin-caption figcaption {
    text-align: left
}

div.math {
    position: relative;
    display: flex;
    flex-direction: row-reverse;
    align-items: center
}

div.math .headerlink {
    font-size: 1em;
    padding: 0 .2em;
    margin-left: 0
}

div.math .headerlink:hover {
    opacity: 1
}

div.math:hover .headerlink {
    opacity: .5
}

span.eqno {
    font-size: 1.2em;
    margin-left: .5em
}

.MathJax {
    overflow-x: auto;
    margin-right: auto !important;
    margin-left: auto !important;
    overflow-y: hidden
}

.MathJax::-webkit-scrollbar {
    width: .3rem;
    height: .3rem
}

.MathJax::-webkit-scrollbar-thumb {
    background: #c1c1c1;
    border-radius: .25rem
}

.MathJax::-webkit-scrollbar-thumb:hover {
    background: #a0a0a0
}

p~div.math {
    margin-top: -1.15rem
}

blockquote {
    margin: 1em;
    padding: .2em 1.5em;
    border-left: 4px solid #ccc
}

blockquote.epigraph,
blockquote.highlights,
blockquote.pull-quote {
    font-size: 1.25em;
    border-left: none
}

blockquote div>p {
    margin-bottom: .5em
}

blockquote div>p+p.attribution {
    font-style: normal;
    font-size: .9em;
    text-align: right;
    color: #6c757d;
    padding-right: 2em
}

aside.sidebar:not(.margin),
div.sidebar:not(.margin) {
    background-color: unset;
    padding: 1em;
    border-radius: .4em;
    border-color: #aaa
}

@media (min-width:992px) {

    aside.sidebar:not(.margin),
    div.sidebar:not(.margin) {
        width: 65%;
        margin: 0 -35% 0 3%
    }
}

div.tableofcontents-wrapper p.caption {
    font-weight: 600 !important;
    margin-bottom: 0 !important
}

div.toctree-wrapper p.caption {
    font-size: 1.4em
}

div.toctree-wrapper>ul {
    padding-left: 1.5em
}

div.toctree-wrapper>ul>li>a {
    font-size: 1.1em
}

div.contents {
    border-radius: .4em;
    padding: 1em 1em 2em
}

div.contents p.topic-title {
    font-size: 1.5em;
    padding: 0 0 0 .5em;
    margin-bottom: 0
}

div.contents>ul {
    list-style: none;
    padding-left: 1em
}

div.contents>ul>li>ul {
    padding-left: 1.5em
}

div.contents>ul>li>p>a {
    font-size: 1.2em;
    margin-bottom: .5em
}

@media print {
    #jb-print-toc {
        margin-bottom: 1.5rem
    }

    #jb-print-toc .section-nav {
        border-left: 0;
        list-style-type: disc;
        margin-left: 3em
    }

    #jb-print-toc .section-nav a {
        text-decoration: none;
        padding-left: 0
    }

    #jb-print-toc .section-nav li {
        display: list-item !important
    }

    #jb-print-toc .section-nav .nav {
        display: none
    }
}

ul.ablog-archive,
ul.postlist {
    padding-left: 0
}

ul.postlist>li>p:first-child {
    font-size: 1.5em
}

ul.postlist li+li {
    margin-top: 2em
}

ul.postlist li>p>a {
    font-style: normal;
    font-size: 1.3em
}

div.bd-sidebar h2 {
    font-size: 1.5em
}

div.bd-sidebar h3 {
    font-size: 1.4em
}

div.bd-sidebar>ul {
    list-style: none;
    padding-left: 0
}

@media only print {

    div.utterances,
    hypothesis-sidebar {
        display: none
    }
}

div.cell div.highlight {
    margin-bottom: 0
}

div.cell div.cell_input,
div.cell div.cell_output pre {
    border-radius: .4em;
    border: 1px solid #ccc
}

div.cell div.cell_output {
    padding-right: 0
}

div.cell.tag_output_scroll div.cell_output,
div.cell.tag_scroll-output div.cell_output {
    max-height: 24em;
    overflow-y: auto
}

div.cell.tag_output_scroll div.cell_output::-webkit-scrollbar,
div.cell.tag_scroll-output div.cell_output::-webkit-scrollbar {
    width: .3rem;
    height: .3rem
}

div.cell.tag_output_scroll div.cell_output::-webkit-scrollbar-thumb,
div.cell.tag_scroll-output div.cell_output::-webkit-scrollbar-thumb {
    background: #c1c1c1;
    border-radius: .25rem
}

div.cell.tag_output_scroll div.cell_output::-webkit-scrollbar-thumb:hover,
div.cell.tag_scroll-output div.cell_output::-webkit-scrollbar-thumb:hover {
    background: #a0a0a0
}

@media print {

    div.cell.tag_output_scroll div.cell_output,
    div.cell.tag_scroll-output div.cell_output {
        max-height: unset;
        overflow-y: visible
    }
}

div.cell.tag_scroll-input div.cell_input {
    max-height: 24em;
    overflow-y: auto
}

div.cell.tag_scroll-input div.cell_input::-webkit-scrollbar {
    width: .3rem;
    height: .3rem
}

div.cell.tag_scroll-input div.cell_input::-webkit-scrollbar-thumb {
    background: #c1c1c1;
    border-radius: .25rem
}

div.cell.tag_scroll-input div.cell_input::-webkit-scrollbar-thumb:hover {
    background: #a0a0a0
}

@media print {
    div.cell.tag_scroll-input div.cell_input {
        max-height: unset;
        overflow-y: visible
    }
}

div.sphinx-tabs>div.sphinx-menu {
    padding: 0
}

div.sphinx-tabs>div.sphinx-menu>a.item {
    width: auto;
    margin: 0 0 -1px
}

.bd-sidebar div#rtd-footer-container {
    position: sticky;
    bottom: 0
}

.bd-sidebar .rst-versions.rst-badge {
    position: unset;
    font-size: .9em
}

.bd-sidebar .rst-versions.rst-badge .rst-current-version {
    display: flex;
    align-items: center;
    gap: .2rem;
    height: 2.5rem;
    transition: background-color .2s ease-out;
    background-color: #fff;
    color: #5a5a5a;
    border-top: 1px solid rgba(0, 0, 0, .1)
}

@media (max-width:768px) {
    .bd-sidebar .rst-versions.rst-badge .rst-current-version {
        height: 3rem
    }
}

.bd-sidebar .rst-versions.rst-badge .rst-current-version:hover {
    background-color: rgba(var(--pst-color-sidebar-expander-background-hover), 1);
    cursor: pointer
}

.bd-sidebar .rst-versions.rst-badge .rst-current-version .fa {
    color: #5a5a5a
}

.bd-sidebar .rst-versions.rst-badge .rst-current-version .fa-book {
    float: unset;
    margin-right: auto
}

.bd-sidebar .rst-versions.rst-badge .rst-current-version .fa-book:after {
    content: "Read the Docs";
    font-family: sans-serif;
    font-weight: 700;
    margin-left: .2em
}

.bd-sidebar .rst-versions.rst-badge .rst-other-versions dt {
    color: #ccc
}

.thebelab-cell {
    border: none !important;
    margin-right: .5em !important
}

.thebelab-cell .thebelab-input {
    padding-left: 10px !important
}

.cell.docutils.container {
    padding-right: 0 !important
}

button.thebe-launch-button {
    height: 2.5em;
    font-size: 1em
}

#search-documentation,
#search-documentation~form,
#search-documentation~p {
    display: none
}

div#search-results>h2 {
    margin-top: 0
}

ul.search {
    margin: 0;
    list-style: none
}

ul.search li {
    background-image: none;
    margin-bottom: 1em;
    padding: 0 0 1em;
    border-bottom: 1px solid rgba(0, 0, 0, .1)
}

ul.search li>a {
    font-size: 1.2em
}

ul.search li div.context,
ul.search li p.context {
    margin: .5em 0 0
}

ul.search li div.context a:before,
ul.search li p.context a:before {
    content: "#";
    padding-right: .2em;
    color: #aaa
}